Presence Data
- Load Data and Change Coordinates to Numeric
presence <- readRDS("../../Daten/Daten_mit_Epoche.RDS")
presence$lng_wgs84 <- as.numeric(as.character(presence$lng_wgs84))
presence$lat_wgs84 <- as.numeric(as.character(presence$lat_wgs84))
- Filter for Eisenzeit and Type and Select Coordinates
# All Types
presence_all <- filter(presence, Epoche %in% c("Latènezeit", "Hallstattzeit"))
presence_all <- presence_all[6:7]
# Siedlung
presence_s <- filter(presence, Siedlung == TRUE)
presence_s <- presence_s[6:7]
# Viereckschanze
presence_v <- filter(presence, Typ == "Viereckschanze")
presence_v <- presence_v[6:7]
Preparation for MaxEnt
- Split into Training and Testing Set
set.seed(12345)
# All Types
group <- kfold(presence_all, 5)
presence_train_all <- presence_all[group != 1, ]
presence_test_all <- presence_all[group == 1, ]
# Siedlung
group <- kfold(presence_s, 5)
presence_train_s <- presence_s[group != 1, ]
presence_test_s <- presence_s[group == 1, ]
# Viereckschanze
group <- kfold(presence_v, 5)
presence_train_v <- presence_v[group != 1, ]
presence_test_v <- presence_v[group == 1, ]
MaxEnt Model
All Types
model_maxent_all <- maxent(predictors, presence_train_all,
factors = c("corine", "aspect"),
nbg = nrow(presence_train_all), remove.duplicates = T,
args = c("responsecurves"))#,
#path = "Maxent")
plot(model_maxent_all)

#density(model_maxent_all)
response(model_maxent_all)

pred_maxent_all <- predict(model_maxent_all, predictors)
plot(pred_maxent_all)

print(pred_maxent_all)
## class : RasterLayer
## dimensions : 396, 584, 231264 (nrow, ncol, ncell)
## resolution : 0.008333333, 0.008333333 (x, y)
## extent : 8.975, 13.84167, 47.26667, 50.56667 (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
## data source : in memory
## names : layer
## values : 0.00182571, 0.9150389 (min, max)
bg <- randomPoints(predictors, nrow(presence_test_all))
eval_maxent_all <- evaluate(model_maxent_all, p = presence_test_all, a = bg, x = predictors)
threshold(eval_maxent_all)
plot(eval_maxent_all, "ROC")

boxplot(eval_maxent_all)

print(eval_maxent_all)
## class : ModelEvaluation
## n presences : 1627
## n absences : 1604
## AUC : 0.7721398
## cor : 0.4738088
## max TPR+TNR at : 0.5978175
Siedlung
model_maxent_s <- maxent(predictors, presence_train_s,
factors = c("corine", "aspect"),
nbg = nrow(presence_train_s), remove.duplicates = T,
args = c("responsecurves"))#,
#path = "Maxent")
plot(model_maxent_s)

#density(model_maxent_s)
response(model_maxent_s)

pred_maxent_s <- predict(model_maxent_s, predictors)
plot(pred_maxent_s)

print(pred_maxent_s)
## class : RasterLayer
## dimensions : 396, 584, 231264 (nrow, ncol, ncell)
## resolution : 0.008333333, 0.008333333 (x, y)
## extent : 8.975, 13.84167, 47.26667, 50.56667 (xmin, xmax, ymin, ymax)
## coord. ref. : +proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0
## data source : in memory
## names : layer
## values : 0.00201724, 0.9728789 (min, max)
bg <- randomPoints(predictors, nrow(presence_test_s))
eval_maxent_s <- evaluate(model_maxent_s, p = presence_test_s, a = bg, x = predictors)
threshold(eval_maxent_s)
plot(eval_maxent_s, "ROC")

boxplot(eval_maxent_s)

print(eval_maxent_s)
## class : ModelEvaluation
## n presences : 4423
## n absences : 4360
## AUC : 0.811101
## cor : 0.5406793
## max TPR+TNR at : 0.5496428
Viereckschanze
model_maxent_v <- maxent(predictors, presence_train_v,
factors = c("corine", "aspect"),
nbg = nrow(presence_train_v), remove.duplicates = T,
args = c("responsecurves"))#,
#path = "Maxent")
plot(model_maxent_v)
